RAD SA NIZOVIMA U PHP-u

O zadatku

U ovom zadatku učimo funkcije za rad sa nizovima: in_array, array_search, array_keys, array_rand, sort, asort, ksort i array_pop.

1. Provjera prisutnosti vrijednosti u nizu – in_array()

Funkcija in_array() služi za provjeru prisutnosti određene vrijednosti u nizu. Funkcija vraća TRUE (istina) ako se tražena vrijednost nalazi u nizu ili FALSE (neistina) ako se ne nalazi.

PHP kod:

$niz_ucenice = array("Ana", "Mia", "Ema", "Eva", "Tea", "Lea");

$provjera = in_array("Mia", $niz_ucenice);
echo $provjera;
var_dump($provjera);

Ispis:

Niz učenica:

Array
(
    [0] => Ana
    [1] => Mia
    [2] => Ema
    [3] => Eva
    [4] => Tea
    [5] => Lea
)

Nalazi li se 'Mia' u nizu?

Rezultat s echo: DA

Rezultat s var_dump:

bool(true)

2. Pronađi indeks i vrijednost – array_search()

Funkcija array_search() pretražuje niz u potrazi za određenom vrijednošću i vraća ključ (indeks) ako je vrijednost uspješno pronađena. Ako vrijednost nije pronađena, funkcija vraća FALSE.

PHP kod:

$indeks = array_search("Eva", $niz_ucenice);
$ime = $niz_ucenice[$indeks];
echo $indeks;
echo $ime;

Ispis:

Indeks imena 'Eva': 3

Ime na tom indeksu: Eva

3. Prikaži sve ključeve – array_keys()

Funkcija array_keys() vraća sve ključeve unutar zadanog niza kao novi numerički niz. Ova funkcija se koristi kod asocijativnih nizova za dobivanje svih imena ključeva, što omogućava lakši pristup i obradu podataka.

PHP kod:

$niz_glavni_gradovi = array(
    "Hrvatska" => "Zagreb",
    "Engleska" => "London",
    "Njemačka" => "Berlin",
    "Francuska" => "Pariz",
    "Island" => "Reykjavik"
);

$kljucevi = array_keys($niz_glavni_gradovi);
print_r($kljucevi);

Ispis:

Asocijativni niz glavnih gradova:

Array
(
    [Hrvatska] => Zagreb
    [Engleska] => London
    [Njemačka] => Berlin
    [Francuska] => Pariz
    [Island] => Reykjavik
)

Svi ključevi:

Array
(
    [0] => Hrvatska
    [1] => Engleska
    [2] => Njemačka
    [3] => Francuska
    [4] => Island
)

Prvi ključ: Hrvatska

Zadnji ključ: Island

4. Slučajni odabir iz niza – array_rand()

Funkcija array_rand() vraća slučajni ključ iz niza, odnosno poziciju na kojoj se nalazi slučajno odabrana vrijednost. Ova funkcija je korisna kada trebamo nasumično izabrati jedan ili više elemenata iz niza.

PHP kod:

$slucajni_indeks = array_rand($niz_ucenice);
$slucajna_ucenica = $niz_ucenice[$slucajni_indeks];
echo $slucajni_indeks;
echo $slucajna_ucenica;

Ispis:

Slučajni indeks: 4

Učenica na tom indeksu: Tea

Osvježi stranicu za novi slučajni odabir!

5. Sortiranje nizova – sort(), asort(), ksort()

Funkcije za sortiranje nizova organiziraju elemente prema određenom redoslijedu. Funkcija sort() sortira niz po vrijednostima i resetira originalne ključeve, stvarajući novi numerički niz s ključevima 0, 1, 2... Funkcija asort() sortira niz po vrijednostima, ali zadržava originalne ključeve povezane s njihovim vrijednostima. Funkcija ksort() sortira asocijativni niz po ključevima, održavajući veze između ključeva i vrijednosti.

PHP kod:

// sort()
$niz_sort = $niz_ucenice;
sort($niz_sort);

// asort()
$niz_asort = $niz_ucenice;
asort($niz_asort);

// ksort()
$niz_ksort = $niz_glavni_gradovi;
ksort($niz_ksort);

Ispis:

Originalni niz učenica:

Array
(
    [0] => Ana
    [1] => Mia
    [2] => Ema
    [3] => Eva
    [4] => Tea
    [5] => Lea
)

Nakon sort() (resetira ključeve):

Array
(
    [0] => Ana
    [1] => Ema
    [2] => Eva
    [3] => Lea
    [4] => Mia
    [5] => Tea
)

Nakon asort() (zadržava ključeve):

Array
(
    [0] => Ana
    [2] => Ema
    [3] => Eva
    [5] => Lea
    [1] => Mia
    [4] => Tea
)

Razlika: funkcija sort() sortira vrijednosti i automatski dodjeljuje nove numeričke ključeve (0, 1, 2...), dok funkcija asort() također sortira vrijednosti abecednim redom, ali pritom zadržava originalne ključeve povezane s njihovim vrijednostima.

Sortiranje asocijativnog niza po ključu:

Originalni niz gradova:

Array
(
    [Hrvatska] => Zagreb
    [Engleska] => London
    [Njemačka] => Berlin
    [Francuska] => Pariz
    [Island] => Reykjavik
)

Nakon ksort() (sortiranje po ključu):

Array
(
    [Engleska] => London
    [Francuska] => Pariz
    [Hrvatska] => Zagreb
    [Island] => Reykjavik
    [Njemačka] => Berlin
)

6. Uklanjanje zadnjeg člana – array_pop()

Funkcija array_pop() koristi se za uklanjanje i vraćanje posljednjeg elementa iz niza. Nakon izvršavanja ove funkcije, niz se trajno mijenja i postaje kraći za jedan element, a uklonjena vrijednost se može pohraniti u varijablu.

PHP kod:

$niz_za_pop = $niz_ucenice;
$uklonjeni = array_pop($niz_za_pop);
print_r($uklonjeni);
print_r($niz_za_pop);

Ispis:

Originalni niz učenica:

Array
(
    [0] => Ana
    [1] => Mia
    [2] => Ema
    [3] => Eva
    [4] => Tea
    [5] => Lea
)

Uklonjeni član: Lea

Niz nakon uklanjanja:

Array
(
    [0] => Ana
    [1] => Mia
    [2] => Ema
    [3] => Eva
    [4] => Tea
)